第2章 2つの価値のお話
2つの価値とは
振る舞い
アーキテクチャ
ソフト + ウェア(=プロダクト)
ソフトウェアは「ソフト」になるように考案されたものだ。マシンの振る舞いを簡単に変更する手段になることを目的としたものである。(Kindle の位置No.501-502)
ソフトウェアはソフト=簡単に変更できるでなければならない
ソフトウェア開発者には、この2つの価値を維持する責任がある。残念ながら、片方だけにフォーカスすることが多く、もう片方が無視されてしまっている。 (Kindle の位置No.488-489)
フォーカスされるのは「振る舞い」
しかし、「アーキテクチャ」のほうが「振る舞い」より価値が高い(「大きな価値」より)
アイゼンハワーのマトリクス
重要度と緊急度のマトリクス
アーキテクチャを後回しにすると、システムの開発コストはますます高くなり、システムの一部または全部が変更不能になるだろう。そのことを覚えておいてほしい。 (Kindle の位置No.564-565)
「アーキテクチャの戦い」「闘争」
ソフトウェア開発チームには、機能の緊急性よりもアーキテクチャの重要性を強く主張する責任が求められる。(Kindle の位置No.552-553)
(これを受けての「戦い」という言い回しではないか)
企業にとって最善と思えるものを求めて闘争
開発チームだけでなくどのチームも
優れたソフトウェア開発チームは、真正面から闘争に立ち向かう。ステークホルダーたちと対等に、ひるむことなく口論する。ソフトウェア開発者もステークホルダーであることは忘れてはいけない。(Kindle の位置No.558-559)
(開発者が振る舞いにだけフォーカスしてはならないという主張が伝わってくる)
「形状」という言葉(比喩)
形状にとらわれないアーキテクチャにしたほうが実用的 (「アーキテクチャ」)